package com.sx.entity.system;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sx.basic.BasicEntity;
import com.sx.basic.serializer.LongToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.*;

/**
 * @author AdinZ
 * @date 2020/6/16 11:33
 * 系统管理员
 */
@Data
@NoArgsConstructor
@TableName(value = "sx_admin")
@Entity
@Table(name = "sx_admin")
public class AdminEntity extends BasicEntity {
    @TableId(type = IdType.ASSIGN_ID)
    @Id @GeneratedValue
    private Long id;
    /**
     * 上级管理员id
     * 代理商模式使用 系统管理员是0
     */
    @ApiModelProperty("上级管理员id")
    @JSONField(serializeUsing = LongToStringSerializer.class)
    private long tid;

    /**
     * 登陆用户名
     */
    @ApiModelProperty("登陆用户名")
    private String username;
    /**
     * 登陆密码
     */
    @ApiModelProperty("登陆密码")
    private String password;
    /**
     * 角色id
     */
    @ApiModelProperty("角色id")
    @JSONField(serializeUsing = LongToStringSerializer.class)
    private long roleId;
    /**
     * 真实姓名
     */
    @ApiModelProperty("真实姓名")
    private String realname;
    /**
     * 手机号
     */
    @ApiModelProperty("手机号")
    private String mobile;
    /**
     * 邮箱
     */
    @ApiModelProperty("邮箱")
    private String email;
    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private long created=System.currentTimeMillis();
    /**
     * 登录时间
     */
    @ApiModelProperty("登录时间")
    private long loginTime;
    /**
     * 登录ip
     */
    @ApiModelProperty("登录ip")
    private String ip;
    /**
     * 管理员状态
     */
    @ApiModelProperty("管理员状态")
    private int state=1;


}
